Public Class GestorRegistrarEstudiante


    Public Sub CrearEstudiante(ByVal nombre As String, ByVal carnet As String, ByVal apellido1 As String, ByVal apellido2 As String _
            , ByVal correo As String)
        Dim esta As Boolean
        esta = MultiEstudiante.BuscarEstudianteRegistrado(carnet)
        If (esta = False) Then
            MultiEstudiante.RegistrarEstudiantes(nombre, carnet, apellido1, apellido2, correo)
        End If
    End Sub
    'TODO asignar plan grupal
    Public Sub CrearEstudianteXGrupo(ByVal carnet As String, ByVal idGrupo As Integer)
        Dim esta As Boolean
        esta = MultiEstudiante.BuscarEstudianteRegistradoGrupo(carnet, idGrupo)
        If (esta = False) Then
            MultiEstudiante.RegistrarEstudianteXGrupo(carnet, idGrupo)
            MultiPlan.RegistrarPlanGrupalPorEstudiante(idGrupo, carnet)
        End If
    End Sub

    Public Function BuscarEstudiante(ByVal pcarnet As String) As ArrayList

        Dim estudiante As New Estudiante
        Dim ArrayEstudiante As New ArrayList

        estudiante = MultiEstudiante.BuscarEstudiante(pcarnet)
        ArrayEstudiante.Add(estudiante.Nombre)
        ArrayEstudiante.Add(estudiante.PrimerApellido)
        ArrayEstudiante.Add(estudiante.SegundoApellido)
        ArrayEstudiante.Add(estudiante.Mail)

        Return ArrayEstudiante
    End Function
    'Public Sub AsignarPlanGrupalPorEstudiante(ByVal pcarnet As String, ByVal idPlanGrupal As String)

    '    Dim estudiante As Estudiante
    '    estudiante = MultiEstudiante.BuscarEstudiante(pcarnet)
    '    Dim grupo As Estudiante
    '    Dim planEvaluacion As RubroEvaluacion
    '    planEvaluacion = MultiPlan.LevantarRubrosObj(idPlanGrupal)
    '    estudiante.Notas = planEvaluacion

    'End Sub

    'este es para llenar el autocomplete
    Public Function BuscarCarnets() As String()
        Dim i As Integer
        Dim carnet As String
        Dim listaEstudiantes As New List(Of String)
        listaEstudiantes = MultiEstudiante.BuscarTodosCarnets
        Dim a(listaEstudiantes.Count - 1) As String

        For i = 0 To listaEstudiantes.Count - 1
            carnet = listaEstudiantes.Item(i)
            a(i) = carnet
        Next i

        Return a
    End Function

    Public Function BuscarNombres() As String()
        Dim i As Integer
        Dim nombre As String
        Dim listaEstudiantes As New List(Of String)
        listaEstudiantes = MultiEstudiante.BuscarTodosNombre
        Dim a(listaEstudiantes.Count - 1) As String

        For i = 0 To listaEstudiantes.Count - 1
            nombre = listaEstudiantes.Item(i)
            a(i) = nombre
        Next i

        Return a
    End Function

    Public Function BuscarApellidos() As String()
        Dim i As Integer
        Dim nombre As String
        Dim listaEstudiantes As New List(Of String)
        listaEstudiantes = MultiEstudiante.BuscarTodosApellido
        Dim a(listaEstudiantes.Count - 1) As String

        For i = 0 To listaEstudiantes.Count - 1
            nombre = listaEstudiantes.Item(i)
            a(i) = nombre
        Next i

        Return a
    End Function

    Public Function ObtenerEstudiantes(ByVal pidGrupo As Integer) As DataTable
        Dim listaEstudiantes As DataTable = MultiEstudiante.LevantarEstudiantes(pidGrupo)

        If (listaEstudiantes Is Nothing) Then
            Return Nothing
        End If
        Return listaEstudiantes
    End Function

    Public Sub ModificarEstudiante(ByVal pidEstudiante As String, ByVal pnombre As String, ByVal papellido1 As String, ByVal papellido2 As String, ByVal pcorreo As String, ByVal pidGrupo As Integer, ByVal pidEstudianteViejo As String)
        MultiEstudiante.ModificarEstudiante(pidEstudiante, pnombre, papellido1, papellido2, pcorreo, pidGrupo, pidEstudianteViejo)
    End Sub

    Public Sub EliminarEstudiante(ByVal pid As String)
        MultiEstudiante.EliminarEstudiante(pid)
    End Sub
End Class

